/**
 * 
 */
package com.autonavi.commons.dbhelper.rshandler;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Map;

import com.autonavi.commons.dbhelper.DBHelperException;

/**
 * @author jintao.yu
 * @date 2014年1月9日 上午10:59:28
 * @package com.autonavi.commons.dbhelper.handler
 * @className AbstractMapHandler
 * @Description TODO
 */
public abstract class AbstractMapHandler<K, V> implements RSHandler<Map<K, V>> {

	/**
	 * @author jintao.yu
	 * @date 2014年1月9日 上午11:01:11
	 * @Description TODO
	 */
	public AbstractMapHandler() {
		// TODO Auto-generated constructor stub
	}

	/**
	 * @author jintao.yu
	 * @date 2014年1月9日 上午11:00:58
	 * @see com.autonavi.commons.dbhelper.rshandler.RSHandler#handle(java.sql.ResultSet)
	 * @Description TODO
	 * @param resultSet
	 * @return
	 */
	public Map<K, V> handle(ResultSet resultSet) throws DBHelperException {
		// TODO Auto-generated method stub
		if(resultSet==null){
			throw new IllegalArgumentException("result must not be null...");
		}
		try{
			while(resultSet.next()){
				
			}
		}catch(SQLException sql){
			throw new DBHelperException("sql exception", sql);
		}
		return null;
	}

	public abstract K genKey(ResultSet resultSet) throws DBHelperException;

	public abstract V genVal(ResultSet resultSet) throws DBHelperException;
}
